package org.quincy.netty.test.comm;

import org.quincy.netty.test.TestUtils;
import org.quincy.rock.comm.communicate.TerminalId;

/**
 * <b>终端。</b>
 * <p><b>详细说明：</b></p>
 * <!-- 在此添加详细说明 -->
 * 一切终端的总称， 终端包括服务器终端、设备终端、手机终端等。
 * <p><b>修改列表：</b></p>
 * <table width="100%" cellSpacing=1 cellPadding=3 border=1>
 * <tr bgcolor="#CCCCFF"><td>序号</td><td>作者</td><td>修改日期</td><td>修改内容</td></tr>
 * <!-- 在此添加修改列表，参考第一行内容 -->
 * <tr><td>1</td><td>wks</td><td>2018年6月14日 下午3:02:15</td><td>建立类型</td></tr>
 * 
 * </table>
 * @version 1.0
 * @author wks
 * @since 1.0
 */
public class Terminal extends TerminalId<Integer, String> {
	/**
	 * serialVersionUID。
	 */
	private static final long serialVersionUID = 1L;

	/** 
	 * isServer。
	 * @see org.quincy.rock.comm.communicate.TerminalId#isServer()
	 */
	@Override
	public boolean isServer() {
		Integer type = getType();
		return type != null && type == TestUtils.SERVER_TYPE;
	}

	/**
	 * <b>构造终端对象。</b>
	 * <p><b>详细说明：</b></p>
	 * <!-- 在此添加详细说明 -->
	 * 无。
	 * @param type 类型
	 * @param code 编号
	 * @return 终端对象
	 */
	public static Terminal of(int type, String code) {
		Terminal term = new Terminal();
		term.setType(type);
		term.setCode(code);
		return term;
	}
}
